package org.btik.bean.impl.temporary;


import java.util.ArrayList;
import java.util.List;

/**
 * 未处理引用的对象
 */
public class UnhandledReferencedBean {

    private String className;


    private String beanId;


    private Class<?> type;

    /**
     * 需要处理依赖的属性
     */
    private List<BeanProp> props;


    /**
     * 未处理引用的bean,此时只需要关注prop的引用即可
     */
    private Object rawBean;

    public String getClassName() {
        return className;
    }

    public void setClassName(String className) {
        this.className = className;
    }

    public String getBeanId() {
        return beanId;
    }

    public void setBeanId(String beanId) {
        this.beanId = beanId;
    }

    public Class<?> getType() {
        return type;
    }

    public void setType(Class<?> type) {
        this.type = type;
    }

    public List<BeanProp> getProps() {
        return props;
    }

    public void setProps(List<BeanProp> props) {
        this.props = props;
    }

    public void addProp(BeanProp beanProp) {
        if (this.props == null) {
            this.props = new ArrayList<>();
        }
        this.props.add(beanProp);
    }


    public Object getRawBean() {
        return rawBean;
    }

    public void setRawBean(Object rawBean) {
        this.rawBean = rawBean;
    }
}
